The subject system and method are generally directed to adapting electronic schematics to differing design requirements.
An electronic system or device may be intended for use under multiple design requirements which require small changes to certain design parameters. For instance, a device operating on a standard power supply may need to be adapted for different voltages depending on the country or region of use, or a controller for a vehicle may have a slightly different operation depending on the specific vehicle model and options. In these cases, the necessary changes may be sufficiently minor that it is more efficient to alter the original design for the device into a “variant” system design (or, simply, a “system variant”), rather than starting over.
A design project may be divided into smaller, “lower-level” elements. For example, a smartphone design may be divided into the CPU, memory, power supply, and so forth. These elements may also be divided even further, in a hierarchical manner. Smaller teams of engineers may then each focus on designing a smaller schematic, or schematic block, for one of these elements, and their element designs may be integrated by a system-level designer to form a complete system design. Along with the collaborative and concurrent design advantages of this approach, the schematics for the smaller elements may be reused in other designs requiring similar elements, or in multiple places in the same design if an element is duplicated.
However, the advantage of this collaboration becomes a disadvantage when variants are also employed. The system variant is only helpful to the present schematic and not to other schematics using only elements of the present schematic. More importantly, if an individual element in the design is changed after variants are prepared, those variants may become inapplicable, forcing the system-level designer to start over.
There is therefore a need for a system and a methodology that allows for efficient coordination between low-level design teams and the variant design team.
There is also a need for a system and a methodology that allows for the variant design to automatically adjust to changes in the designs of the low-level elements.